package com.ysd.lis.entity.qc;


import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ysd.lis.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.sql.Timestamp;
import java.util.List;

/**
 * <p>
 * cold_chain.t_user
 * </p>
 *
 * @author peng
 * @since 2021-10-08
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class QcMaterialItem extends BaseEntity {

    private static final long serialVersionUID = 1L;

    private String materialId;
    private String qcItemId;
    private String instrId;
    private String itemDictId;
    @JsonFormat(pattern = "yyyy-MM-dd", timezone="GMT+8")
    @TableField(fill = FieldFill.UPDATE)
    private Timestamp enableDate;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    @TableField(fill = FieldFill.UPDATE)
    private Timestamp validDate;
    private Boolean reportBasis;
    private String method;
    private String reagentBatchNum;
    private String reagentSupplier;
    @TableField(exist = false)
    private String reagentSupplierName;
    private String caliBatchNum;
    private String reagentManu;
    @TableField(exist = false)
    private String reagentManuName;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    @TableField(fill = FieldFill.UPDATE)
    private Timestamp stopDate;
    private String stopOperator;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone="GMT+8")
    private Timestamp entryDate;
    private String entryOperator;
    private Double maxTea;
    private Double maxCv;
    private String targetRefer; //TARGET_REFER
    private String qcRuleType;
    private Integer seq;
    private Integer status;
    private String itemDefine;
    @TableField(exist = false)
    private String itemDictName;
    @TableField(exist = false)
    private String itemDictCode;
    @TableField(exist = false)
    private String itemEnCode;
    @TableField(exist = false)
    private String unit;

    @TableField(exist = false)
    private List<QcMaterialItemTarget> materialTargetList;
    @TableField(exist = false)
    private Double mean;
    @TableField(exist = false)
    private Double sd;
    @TableField(exist = false)
    private int outControlCount;
    @TableField(exist = false)
    private String outControlInfo;
    @TableField(exist = false)
    private Integer alarmCount;
    @TableField(exist = false)
    private String alarmInfo;
    @TableField(exist = false)
    private String materialName;
    @TableField(exist = false)
    private String jsJgFlag;

}
